在深度學習當道的現在,許多人可能會認為其中的數學模型很複雜,一般人難以直接拿來應用,對此已經有許多大公司開源相關工具,或是熱心的研究者開發開源工具放在github上面,其主要目的為讓任何使用者都能夠輕鬆分析資料。
靜態資料爬蟲
所謂靜態資料是server產生資料回傳到你的電腦後就固定在網頁上的資料,一般回傳的資料是文字資料,裡面很多視覺控制資料,所以瀏覽器才能顯示各種文字大小顏色、和對其方式。通常定義網頁元素是html標籤,爬蟲只要根據網頁上html標籤資訊,找到目標標籤後就能進行擷取。
在python中常先以urllib套件來request server資料,取回充滿html標籤的資料後,再以BeautifulSoup套件解析標籤,最後找到目標標籤擷取出內容。
動態資料爬蟲
不同於靜態資料,動態資料是非同步化的,網頁部分內容可以再任一時間重新更新最新資料,如果以靜態網頁方法處理,會不知道哪部分資料被更新或哪時更新,就有可能取得錯誤資料,最明顯的例子就是Facebook,fb網頁通常不會一次載入,而是動態載入,留言區域內容也是時時更新。
所以對於動態載入、時時更新的資料,必須讓程式像模仿人類瀏覽FB的動作一樣,自動加載資料後才能進行資料擷取。在python中常以Selenium套件來模仿人類的動作完成資料擷取。
資料分析會經過5個步驟,資料取得->資料處理->特徵擷取->建模->驗證,對於資料取得可以使用資料爬蟲完成,而其他步驟目前已經有免費工具可以完成。
Azure Machine Learning Studio
這個工具以線上視覺化方式讓使用者能夠以拖拉組件方式對資料進行操作,內建常見資料型態轉換、常見分類分群回歸模型,還有最後的驗證分數計算mse, mae, entropy loss, accuracy, F1 score等...。
除了Azure還有Amazon Machine Learning平台,此類的線上分析工具最大特色是擁有強大的GPU運算資源,目前高檔GPU並不是一般使用者會想買的價錢,因此如果是一般使用者對於資料分析這塊有興趣,可以先嘗試以這些資源練習。
1. 資料爬蟲(上) - 靜態網頁篇
2. 資料爬蟲(下) - 動態網頁篇
3. AWS 上的機器學習
4. Azure Machine Learning Studio